package com.codi.bus.core.service;

import com.codi.bus.core.resultModel.BaseResult;
import com.codi.bus.core.service.model.T0Model;

import java.util.List;

/**
 * T0 service
 *
 * @author shi.pengyan
 * @version 1.0 2017-10-20 10:53
 * @since 1.0
 */
public interface T0Service {

    /**
     * 查询最高利率的T0基金
     *
     * @return
     */
    T0Model queryTopRateFund(Boolean isOrg);

    /**
     * 计算最高利率的T0基金
     *
     * @return
     */
    T0Model calcTopRateFund(Boolean isOrg);


    /**
     * 查询T0列表
     *
     * @return
     */
    List<T0Model> queryT0Funds(Boolean isOrg);

    /**
     * 计算T0列表
     *
     * @return
     */
    List<T0Model> calcT0Funds(Boolean isOrg);

    /**
     * 查询某只t0
     *
     * @param isOrg
     * @param fundCode
     * @return
     */
    T0Model queryT0Fund(Boolean isOrg, String fundCode);

    /**
     * 查询（T0）基金列表
     *
     * @param isOrg
     * @param fundCodes
     * @return
     */
    List<T0Model> queryT0Funds(Boolean isOrg, List<String> fundCodes);

    /**
     * 重新加载缓存
     */
    void reloadCache();

    /**
     * 设置首页配置
     *
     * @param t0FundCode
     * @return
     */
    BaseResult configAppHomeConfig(String t0FundCode);


    /**
     * config t0 list
     *
     * @return
     */
    BaseResult configT0List(boolean isOrg);

    BaseResult getTOFundTradeLimit(String fundCode);

    BaseResult setT0FundTradeLimit(String fundCode, String minMoney, String userOrOrg, String reminder);
}
